home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 July & August / PCWorld_2006-07-08_cd.bin / v cisle / acehtml / acehtmlfreeware.exe / scriptdef / Advanced Calculator.sd < prev    next >
INI File  |  2004-06-28  |  4KB  |  163 lines

  1. [SUBJECT]
  2. Description=Comprehensive calculator
  3. ImageIndex=-1
  4. Folder=Mathematics
  5.  
  6.  
  7. [BODY_TEXT]
  8. ;<div align="center">
  9. ;<form name="keypad" action="">
  10. ;
  11. ;<table summary="" border="2" width="50" height="60" cellpadding="1" cellspacing="5">
  12. ;<tr>
  13. ;<td colspan="3" align="middle">
  14. ;<input name="readout" type="text" size="24" value="0" width="100%">
  15. ;</td>
  16. ;<td>
  17. ;</td>
  18. ;<td>
  19. ;<input name="btnclear" type="button" value="  c  " onclick="myclear()">
  20. ;</td>
  21. ;<td><input name="btnclearentry" type="button" value="  ce " onclick="clearentry()">
  22. ;</td>
  23. ;</tr>
  24. ;<tr>
  25. ;<td>
  26. ;<input name="btnseven" type="button" value="  7  " onclick="numpressed(7)">
  27. ;</td>
  28. ;<td>
  29. ;<input name="btneight" type="button" value="  8  " onclick="numpressed(8)">
  30. ;</td>
  31. ;<td>
  32. ;<input name="btnnine" type="button" value="  9  " onclick="numpressed(9)">
  33. ;</td>
  34. ;<td>
  35. ;</td>
  36. ;<td>
  37. ;<input name="btnneg" type="button" value=" +/- " onclick="neg()">
  38. ;</td>
  39. ;<td>
  40. ;<input name="btnpercent" type="button" value="  % " onclick="percent()">
  41. ;</td>
  42. ;</tr>
  43. ;<tr>
  44. ;<td>
  45. ;<input name="btnfour" type="button" value="  4  " onclick="numpressed(4)">
  46. ;</td>
  47. ;<td>
  48. ;<input name="btnfive" type="button" value="  5  " onclick="numpressed(5)">
  49. ;</td>
  50. ;<td>
  51. ;<input name="btnsix" type="button" value="  6  " onclick="numpressed(6)">
  52. ;</td>
  53. ;<td>
  54. ;</td>
  55. ;<td align="middle"><input name="btnplus" type="button" value="  +  " onclick="operation('+')">
  56. ;</td>
  57. ;<td align="middle"><input name="btnminus" type="button" value="   -   " onclick="operation('-')">
  58. ;</td>
  59. ;</tr>
  60. ;<tr>
  61. ;<td>
  62. ;<input name="btnone" type="button" value="  1  " onclick="numpressed(1)">
  63. ;</td>
  64. ;<td>
  65. ;<input name="btntwo" type="button" value="  2  " onclick="numpressed(2)">
  66. ;</td>
  67. ;<td>
  68. ;<input name="btnthree" type="button" value="  3  " onclick="numpressed(3)">
  69. ;</td>
  70. ;<td>
  71. ;</td>
  72. ;<td align="middle"><input name="btnmultiply" type="button" value="  *  " onclick="operation('*')">
  73. ;</td>
  74. ;<td align="middle"><input name="btndivide" type="button" value="   /   " onclick="operation('/')">
  75. ;</td>
  76. ;</tr>
  77. ;<tr>
  78. ;<td>
  79. ;<input name="btnzero" type="button" value="  0  " onclick="numpressed(0)">
  80. ;</td>
  81. ;<td>
  82. ;<input name="btndecimal" type="button" value="   .  " onclick="decimal()">
  83. ;</td>
  84. ;<td colspan="3">
  85. ;</td>
  86. ;<td>
  87. ;<input name="btnequals" type="button" value="  =  " onclick="operation('=')">
  88. ;</td>
  89. ;</tr>
  90. ;</table>
  91. ;</form>
  92. ;</div>
  93. ;<font face="verdana, arial, helvetica" size="2">
  94. ;<script language="javascript">
  95. ;<!-- begin
  96. ;var fkeypad = document.keypad;
  97. ;var accum = 0;
  98. ;var flagnewnum = false;
  99. ;var pendingop = "";
  100. ;function numpressed (num) {
  101. ;if (flagnewnum) {
  102. ;fkeypad.readout.value  = num;
  103. ;flagnewnum = false;
  104. ;   }
  105. ;else {
  106. ;if (fkeypad.readout.value == "0")
  107. ;fkeypad.readout.value = num;
  108. ;else
  109. ;fkeypad.readout.value += num;
  110. ;   }
  111. ;}
  112. ;function operation (op) {
  113. ;var readout = fkeypad.readout.value;
  114. ;if (flagnewnum && pendingop != "=");
  115. ;else
  116. ;{
  117. ;flagnewnum = true;
  118. ;if ( '+' == pendingop )
  119. ;accum += parseFloat(readout);
  120. ;else if ( '-' == pendingop )
  121. ;accum -= parseFloat(readout);
  122. ;else if ( '/' == pendingop )
  123. ;accum /= parseFloat(readout);
  124. ;else if ( '*' == pendingop )
  125. ;accum = accum * parseFloat(readout);
  126. ;else
  127. ;accum = parseFloat(readout);
  128. ;fkeypad.readout.value = accum;
  129. ;pendingop = op;
  130. ;   }
  131. ;}
  132. ;function decimal () {
  133. ;var curreadout = fkeypad.readout.value;
  134. ;if (flagnewnum) {
  135. ;curreadout = "0.";
  136. ;flagnewnum = false;
  137. ;   }
  138. ;else
  139. ;{
  140. ;if (curreadout.indexof(".") == -1)
  141. ;curreadout += ".";
  142. ;   }
  143. ;fkeypad.readout.value = curreadout;
  144. ;}
  145. ;function clearentry () {
  146. ;fkeypad.readout.value = "0";
  147. ;flagnewnum = true;
  148. ;}
  149. ;function myclear () {
  150. ;accum = 0;
  151. ;pendingop = "";
  152. ;clearentry();
  153. ;}
  154. ;function neg () {
  155. ;fkeypad.readout.value = parseFloat(fkeypad.readout.value) * -1;
  156. ;}
  157. ;function percent () {
  158. ;fkeypad.readout.value = (parseFloat(fkeypad.readout.value) / 100) * parseFloat(accum);
  159. ;}
  160. ;// end -->
  161. ;</script>
  162. ;</font>
  163.